Data communication networks may include various routers, switches, bridges, and other network devices, coupled to and configured to pass data to one another. These devices will be referred to herein as “network elements.” Data is communicated through the data communication network by passing protocol data units, such as Internet Protocol packets, Ethernet Frames, data cells, segments, or other logical associations of bits/bytes of data, between the network elements by utilizing one or more communication links between the network elements. A particular protocol data unit may be handled by multiple network elements and cross multiple communication links as it travels between its source and its destination over the network.
The various network elements on the communication network communicate with each other using predefined sets of rules, referred to herein as protocols. Different protocols are used to govern different aspects of the communication, such as how signals should be formed for transmission between network elements, various aspects of what the protocol data units should look like, how protocol data units should be handled or routed through the network by the network elements, and how information such as routing information should be exchanged between the network elements.
One commonly implemented networking protocol is referred to as Ethernet. The Ethernet protocol has been defined by the Institute of Electrical and Electronics Engineers (IEEE). A first family of protocols (IEEE 802.3) defines Ethernet for local area networks, while another family of protocols (IEEE 802.1) defines Ethernet for use in wide area networks such as carrier networks.
As networks grow and the amount of traffic on the networks increases, congestion is inevitable where bandwidth supply is less than demand. For example, both IEEE standards groups (802.1 and 802.3) have working committees focused on congestion in Ethernet networks. One way to alleviate congestion is to add capacity to the network. This is a viable long-term solution for networks where it is easy to add capacity, such as in local area networks. There are particular networks, however, where it is difficult to add bandwidth, such as in wide area networks, metropolitan area networks, and wireless networks. Additionally, although it is relatively easier to add capacity to a local area network, doing so may take a finite amount of time and resources and, accordingly, even these types of networks may experience congestion. Other networking technologies, such as many of the technologies used to implement access networks to connect subscribers to service providers, are often inherently slow. Where the underlying technology is only capable of limited bandwidth throughput, congestion is likely to occur and difficult to alleviate. Accordingly, it would be advantageous to provide a way to improve bandwidth efficiency and therefore reduce congestion in an Ethernet network.